<?php
/**
 * Контроллер облака тегов
 * 
 * @category Phorm
 * @package Controller_Module_Default
 * @name /Phorm/Controller/Module/Default/Tags.php
 * @copyright phorm.ru
 * @since 02.01.2011
 * @author vladimir@kachalov.net
 */

class Phorm_Controller_Module_Default_Tags extends Phorm_Controller_Controller {
	
	/**
	 * Экземпляр класса тегов
	 * @var Phorm_Tags
	 */
	private $Tags;
	
	
	/**
	 * Предиспетчер
	 * 
	 * @return void
	 */
	
	public function preDispatch() {
		
		$this->Tags = new Phorm_Tags();
		
	}
	
		
	/**
	 * Список тегов
	 * 
	 * @return void
	 */
		
	public function indexAction() {
			
		$this->view->assign("TagsCloud",$this->Tags->getTagsCloud());
			
	}
		
		
	/**
	 * Список материалов сайта по тегу
	 * 
	 * @return void
	 */
		
	public function viewAction() {

		if(isset($this->_params["tagid"]) && $TagInfo = $this->Tags->getTagInfo($this->_params["tagid"])) {

			if($SearchResults = $this->Tags->getSearchResults($TagInfo["tagid"])) {

				$this->view->assign("TagInfo",$TagInfo);
				$this->view->assign("SearchResults",$SearchResults);
				$this->view->assign("Paginator",$this->Tags->getPaginator());
					
			} else {
					
				$this->view->assign("Errors",array($this->_translate->_("По вашему запросу ничего не найдено")));
					
			}
				
		} else {
			
			return $this->_forward("notfound","error",null,array("action"=>"notfound","controller"=>"error"));
			
		}
					
	}
		
}